package com.egao.customer.biz;

import com.egao.common.core.damon.results.PageResult2;
import com.egao.common.system.entity.User;
import com.egao.customer.entity.PayHistory;
import net.sf.json.JSONObject;
import org.apache.poi.ss.formula.functions.T;
import java.util.List;

/**
 *
 * 数据层接口
 * @author : Doman
 * @date : 2020-06-14 21:03:22
 * @version ：1.0
 */
public interface PayHistoryBiz {

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject listSummaryYear(PageResult2<T> page, PayHistory payHistory) throws Exception;

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject listSummarySeason(PageResult2<T> page, PayHistory payHistory) throws Exception;

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject listSummaryWeek(PageResult2<T> page, PayHistory payHistory) throws Exception;

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject listSummaryMonth(PageResult2<T> page, PayHistory payHistory) throws Exception;

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject listSummaryDay(PageResult2<T> page, PayHistory payHistory) throws Exception;

	/** 获取实体类表格
	 * @param page
	 * @param payHistory
	 * @return
	 */
	public JSONObject list(PageResult2<T> page, PayHistory payHistory, User loginUser) throws Exception;

	/**
	 * 获取实体类表格
	 * @param payHistory
	 * @return
	 */
	public List<PayHistory> list(PayHistory payHistory, User loginUser);
	
	/**
	 * 根据Id查询实体类
	 * @param payHistory
	 * @return
	 */
	public PayHistory getById(PayHistory payHistory);
	
	/**
	 * 保存实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean save(PayHistory payHistory, User loginUser);

	/**
	 * 保存实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean saveYfk(PayHistory payHistory, User loginUser);

	/**
	 * 保存实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean saveJf(PayHistory payHistory, User loginUser);

	/**
	 * 保存实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean saveWg(PayHistory payHistory, User loginUser);

	/**
	 * 修改实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean update(PayHistory payHistory, User loginUser);

	/**
	 * 修改实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean updateWg(PayHistory payHistory, User loginUser);

	/**
	 * 删除实体类
	 * @param payHistory
	 * @param loginUser
	 * @return
	 */
	public boolean remove(PayHistory payHistory, User loginUser);

}
